1 /* 2 3 Boost Software License - Version 1.0 - August 17th, 2003 4 5 Permission is hereby granted, free of charge, to any person or organization 6 obtaining a copy of the software and accompanying documentation covered by 7 this license (the "Software") to use, reproduce, display, distribute, 8 execute, and transmit the Software, and to prepare derivative works of the 9 Software, and to permit third-parties to whom the Software is furnished to 10 do so, all subject to the following: 11 12 The copyright notices in the Software and this entire statement, including 13 the above license grant, this restriction and the following disclaimer, 14 must be included in all copies of the Software, in whole or in part, and 15 all derivative works of the Software, unless such copies or derivative 16 works are solely in the form of machine-executable object code generated by 17 a source language processor. 18 19 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT 22 SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE 23 FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, 24 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 25 DEALINGS IN THE SOFTWARE. 26 27 */ 28 29 module derelict.glib.gkeyfile; 30 31 import derelict.glib.gtypes; 32 import derelict.glib.glibconfig; 33 import derelict.glib.gerror; 34 import derelict.glib.gquark; 35 import core.stdc.config; 36 37 extern (C): 38 39 alias _Anonymous_0 GKeyFileError; 40 alias _GKeyFile GKeyFile; 41 alias _Anonymous_1 GKeyFileFlags; 42 43 enum _Anonymous_0 44 { 45 G_KEY_FILE_ERROR_UNKNOWN_ENCODING = 0, 46 G_KEY_FILE_ERROR_PARSE = 1, 47 G_KEY_FILE_ERROR_NOT_FOUND = 2, 48 G_KEY_FILE_ERROR_KEY_NOT_FOUND = 3, 49 G_KEY_FILE_ERROR_GROUP_NOT_FOUND = 4, 50 G_KEY_FILE_ERROR_INVALID_VALUE = 5 51 } 52 53 enum _Anonymous_1 54 { 55 G_KEY_FILE_NONE = 0, 56 G_KEY_FILE_KEEP_COMMENTS = 1, 57 G_KEY_FILE_KEEP_TRANSLATIONS = 2 58 } 59 60 struct _GKeyFile; 61 62 version(Derelict_Link_Static) 63 { 64 extern( C ) nothrow 65 { 66 GQuark g_key_file_error_quark(); 67 GKeyFile* g_key_file_new(); 68 GKeyFile* g_key_file_ref(GKeyFile* key_file); 69 void g_key_file_unref(GKeyFile* key_file); 70 void g_key_file_free(GKeyFile* key_file); 71 void g_key_file_set_list_separator(GKeyFile* key_file, gchar separator); 72 gboolean g_key_file_load_from_file(GKeyFile* key_file, const(gchar)* file, GKeyFileFlags flags, GError** error); 73 gboolean g_key_file_load_from_data(GKeyFile* key_file, const(gchar)* data, gsize length, GKeyFileFlags flags, GError** error); 74 gboolean g_key_file_load_from_dirs(GKeyFile* key_file, const(gchar)* file, const(gchar*)* search_dirs, gchar** full_path, GKeyFileFlags flags, GError** error); 75 gboolean g_key_file_load_from_data_dirs(GKeyFile* key_file, const(gchar)* file, gchar** full_path, GKeyFileFlags flags, GError** error); 76 gchar* g_key_file_to_data(GKeyFile* key_file, gsize* length, GError** error); 77 gchar* g_key_file_get_start_group(GKeyFile* key_file); 78 gchar** g_key_file_get_groups(GKeyFile* key_file, gsize* length); 79 gchar** g_key_file_get_keys(GKeyFile* key_file, const(gchar)* group_name, gsize* length, GError** error); 80 gboolean g_key_file_has_group(GKeyFile* key_file, const(gchar)* group_name); 81 gboolean g_key_file_has_key(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 82 gchar* g_key_file_get_value(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 83 void g_key_file_set_value(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* value); 84 gchar* g_key_file_get_string(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 85 void g_key_file_set_string(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* string); 86 gchar* g_key_file_get_locale_string(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, GError** error); 87 void g_key_file_set_locale_string(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, const(gchar)* string); 88 gboolean g_key_file_get_boolean(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 89 void g_key_file_set_boolean(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gboolean value); 90 gint g_key_file_get_integer(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 91 void g_key_file_set_integer(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gint value); 92 gint64 g_key_file_get_int64(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 93 void g_key_file_set_int64(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gint64 value); 94 guint64 g_key_file_get_uint64(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 95 void g_key_file_set_uint64(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, guint64 value); 96 gdouble g_key_file_get_double(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 97 void g_key_file_set_double(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gdouble value); 98 gchar** g_key_file_get_string_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 99 void g_key_file_set_string_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar*)* list, gsize length); 100 gchar** g_key_file_get_locale_string_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, gsize* length, GError** error); 101 void g_key_file_set_locale_string_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, const(gchar*)* list, gsize length); 102 gboolean* g_key_file_get_boolean_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 103 void g_key_file_set_boolean_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gboolean* list, gsize length); 104 gint* g_key_file_get_integer_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 105 void g_key_file_set_double_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gdouble* list, gsize length); 106 gdouble* g_key_file_get_double_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 107 void g_key_file_set_integer_list(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gint* list, gsize length); 108 gboolean g_key_file_set_comment(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* comment, GError** error); 109 gchar* g_key_file_get_comment(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 110 gboolean g_key_file_remove_comment(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 111 gboolean g_key_file_remove_key(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 112 gboolean g_key_file_remove_group(GKeyFile* key_file, const(gchar)* group_name, GError** error); 113 } 114 } 115 else 116 { 117 extern( C ) nothrow 118 { 119 alias da_g_key_file_error_quark = GQuark function(); 120 alias da_g_key_file_new = GKeyFile* function(); 121 alias da_g_key_file_ref = GKeyFile* function(GKeyFile* key_file); 122 alias da_g_key_file_unref = void function(GKeyFile* key_file); 123 alias da_g_key_file_free = void function(GKeyFile* key_file); 124 alias da_g_key_file_set_list_separator = void function(GKeyFile* key_file, gchar separator); 125 alias da_g_key_file_load_from_file = gboolean function(GKeyFile* key_file, const(gchar)* file, GKeyFileFlags flags, GError** error); 126 alias da_g_key_file_load_from_data = gboolean function(GKeyFile* key_file, const(gchar)* data, gsize length, GKeyFileFlags flags, GError** error); 127 alias da_g_key_file_load_from_dirs = gboolean function(GKeyFile* key_file, const(gchar)* file, const(gchar*)* search_dirs, gchar** full_path, GKeyFileFlags flags, GError** error); 128 alias da_g_key_file_load_from_data_dirs = gboolean function(GKeyFile* key_file, const(gchar)* file, gchar** full_path, GKeyFileFlags flags, GError** error); 129 alias da_g_key_file_to_data = gchar* function(GKeyFile* key_file, gsize* length, GError** error); 130 alias da_g_key_file_get_start_group = gchar* function(GKeyFile* key_file); 131 alias da_g_key_file_get_groups = gchar** function(GKeyFile* key_file, gsize* length); 132 alias da_g_key_file_get_keys = gchar** function(GKeyFile* key_file, const(gchar)* group_name, gsize* length, GError** error); 133 alias da_g_key_file_has_group = gboolean function(GKeyFile* key_file, const(gchar)* group_name); 134 alias da_g_key_file_has_key = gboolean function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 135 alias da_g_key_file_get_value = gchar* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 136 alias da_g_key_file_set_value = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* value); 137 alias da_g_key_file_get_string = gchar* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 138 alias da_g_key_file_set_string = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* string); 139 alias da_g_key_file_get_locale_string = gchar* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, GError** error); 140 alias da_g_key_file_set_locale_string = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, const(gchar)* string); 141 alias da_g_key_file_get_boolean = gboolean function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 142 alias da_g_key_file_set_boolean = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gboolean value); 143 alias da_g_key_file_get_integer = gint function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 144 alias da_g_key_file_set_integer = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gint value); 145 alias da_g_key_file_get_int64 = gint64 function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 146 alias da_g_key_file_set_int64 = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gint64 value); 147 alias da_g_key_file_get_uint64 = guint64 function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 148 alias da_g_key_file_set_uint64 = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, guint64 value); 149 alias da_g_key_file_get_double = gdouble function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 150 alias da_g_key_file_set_double = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gdouble value); 151 alias da_g_key_file_get_string_list = gchar** function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 152 alias da_g_key_file_set_string_list = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar*)* list, gsize length); 153 alias da_g_key_file_get_locale_string_list = gchar** function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, gsize* length, GError** error); 154 alias da_g_key_file_set_locale_string_list = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* locale, const(gchar*)* list, gsize length); 155 alias da_g_key_file_get_boolean_list = gboolean* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 156 alias da_g_key_file_set_boolean_list = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gboolean* list, gsize length); 157 alias da_g_key_file_get_integer_list = gint* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 158 alias da_g_key_file_set_double_list = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gdouble* list, gsize length); 159 alias da_g_key_file_get_double_list = gdouble* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gsize* length, GError** error); 160 alias da_g_key_file_set_integer_list = void function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, gint* list, gsize length); 161 alias da_g_key_file_set_comment = gboolean function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, const(gchar)* comment, GError** error); 162 alias da_g_key_file_get_comment = gchar* function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 163 alias da_g_key_file_remove_comment = gboolean function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 164 alias da_g_key_file_remove_key = gboolean function(GKeyFile* key_file, const(gchar)* group_name, const(gchar)* key, GError** error); 165 alias da_g_key_file_remove_group = gboolean function(GKeyFile* key_file, const(gchar)* group_name, GError** error); 166 } 167 168 __gshared 169 { 170 da_g_key_file_error_quark g_key_file_error_quark; 171 da_g_key_file_new g_key_file_new; 172 da_g_key_file_ref g_key_file_ref; 173 da_g_key_file_unref g_key_file_unref; 174 da_g_key_file_free g_key_file_free; 175 da_g_key_file_set_list_separator g_key_file_set_list_separator; 176 da_g_key_file_load_from_file g_key_file_load_from_file; 177 da_g_key_file_load_from_data g_key_file_load_from_data; 178 da_g_key_file_load_from_dirs g_key_file_load_from_dirs; 179 da_g_key_file_load_from_data_dirs g_key_file_load_from_data_dirs; 180 da_g_key_file_to_data g_key_file_to_data; 181 da_g_key_file_get_start_group g_key_file_get_start_group; 182 da_g_key_file_get_groups g_key_file_get_groups; 183 da_g_key_file_get_keys g_key_file_get_keys; 184 da_g_key_file_has_group g_key_file_has_group; 185 da_g_key_file_has_key g_key_file_has_key; 186 da_g_key_file_get_value g_key_file_get_value; 187 da_g_key_file_set_value g_key_file_set_value; 188 da_g_key_file_get_string g_key_file_get_string; 189 da_g_key_file_set_string g_key_file_set_string; 190 da_g_key_file_get_locale_string g_key_file_get_locale_string; 191 da_g_key_file_set_locale_string g_key_file_set_locale_string; 192 da_g_key_file_get_boolean g_key_file_get_boolean; 193 da_g_key_file_set_boolean g_key_file_set_boolean; 194 da_g_key_file_get_integer g_key_file_get_integer; 195 da_g_key_file_set_integer g_key_file_set_integer; 196 da_g_key_file_get_int64 g_key_file_get_int64; 197 da_g_key_file_set_int64 g_key_file_set_int64; 198 da_g_key_file_get_uint64 g_key_file_get_uint64; 199 da_g_key_file_set_uint64 g_key_file_set_uint64; 200 da_g_key_file_get_double g_key_file_get_double; 201 da_g_key_file_set_double g_key_file_set_double; 202 da_g_key_file_get_string_list g_key_file_get_string_list; 203 da_g_key_file_set_string_list g_key_file_set_string_list; 204 da_g_key_file_get_locale_string_list g_key_file_get_locale_string_list; 205 da_g_key_file_set_locale_string_list g_key_file_set_locale_string_list; 206 da_g_key_file_get_boolean_list g_key_file_get_boolean_list; 207 da_g_key_file_set_boolean_list g_key_file_set_boolean_list; 208 da_g_key_file_get_integer_list g_key_file_get_integer_list; 209 da_g_key_file_set_double_list g_key_file_set_double_list; 210 da_g_key_file_get_double_list g_key_file_get_double_list; 211 da_g_key_file_set_integer_list g_key_file_set_integer_list; 212 da_g_key_file_set_comment g_key_file_set_comment; 213 da_g_key_file_get_comment g_key_file_get_comment; 214 da_g_key_file_remove_comment g_key_file_remove_comment; 215 da_g_key_file_remove_key g_key_file_remove_key; 216 da_g_key_file_remove_group g_key_file_remove_group; 217 } 218 }